home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 8: LINUX Games / Linux Cubed Series 8 - LINUX Games.iso / games / x11 / strategy / xpuzzles.3 / xpuzzles / xpuzzles-5.3.1 / xskewb / Skewb2dP.h < prev    next >
C/C++ Source or Header  |  1996-02-05  |  2KB  |  76 lines

  1. /*
  2. # X-BASED SKEWB
  3. #
  4. #  Skewb2dP.h
  5. #
  6. ###
  7. #
  8. #  Copyright (c) 1994 - 96    David Albert Bagley, bagleyd@hertz.njit.edu
  9. #
  10. #                   All Rights Reserved
  11. #
  12. #  Permission to use, copy, modify, and distribute this software and
  13. #  its documentation for any purpose and without fee is hereby granted,
  14. #  provided that the above copyright notice appear in all copies and
  15. #  that both that copyright notice and this permission notice appear in
  16. #  supporting documentation, and that the name of the author not be
  17. #  used in advertising or publicity pertaining to distribution of the
  18. #  software without specific, written prior permission.
  19. #
  20. #  This program is distributed in the hope that it will be "playable",
  21. #  but WITHOUT ANY WARRANTY; without even the implied warranty of
  22. #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  23. #
  24. */
  25.  
  26. /* Private header file for Skewb2d */
  27.  
  28. #ifndef _Skewb2dP_h
  29. #define _Skewb2dP_h
  30.  
  31. #include "Skewb2d.h"
  32.  
  33. #define FRONTLOC 0
  34. #define BACKLOC 11
  35. #define COORD2D 8
  36. #define MAXX 3
  37. #define MAXY 4
  38. #define MAXXY 4 /* (MAX(MAXX,MAXY)) */
  39. #define MAXRECT (MAXX*MAXY)
  40.  
  41. typedef struct _Skewb2DPart
  42. {
  43.   Position diamondLength;
  44.   Position faceLength;
  45.   Position viewLength;
  46. } Skewb2DPart;
  47.  
  48. typedef struct _Skewb2DRec
  49. {
  50.   CorePart core;
  51.   SkewbPart skewb;
  52.   Skewb2DPart skewb2d;
  53. } Skewb2DRec;
  54.  
  55. /* This gets around C's inability to do inheritance */
  56. typedef struct _Skewb2DClassPart
  57. {
  58.   int ignore;
  59. } Skewb2DClassPart;
  60.  
  61. typedef struct _Skewb2DClassRec
  62. {
  63.   CoreClassPart core_class;
  64.   SkewbClassPart skewb_class;
  65.   Skewb2DClassPart skewb2d_class;
  66. } Skewb2DClassRec;
  67.  
  68. extern Skewb2DClassRec skewb2dClassRec;
  69.  
  70. extern int SelectPolyhedrons2D();
  71. extern int NarrowSelection2D();
  72. extern void DrawDiamond2D();
  73. extern void DrawTriangle2D();
  74.  
  75. #endif /* _Skewb2dP_h */
  76.